package cn.edu.whut.system.vo.user;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import java.util.List;

@Data
@Schema(description = "系统服务 - 用户信息Request VO")
public class SysUserReq {

    /**
     * 用户名
     */
    @Schema(description = "用户名", example = "admin", requiredMode = Schema.RequiredMode.REQUIRED)
    private String username;

    /**
     * 昵称
     */
    @Schema(description = "昵称", example = "管理员", requiredMode = Schema.RequiredMode.REQUIRED)
    private String nickname;

    /**
     * 密码
     */
    @Schema(description = "密码", example = "123456", requiredMode = Schema.RequiredMode.REQUIRED)
    private String password;

    /**
     * 手机号
     */
    @Schema(description = "手机号", example = "13888888888", requiredMode = Schema.RequiredMode.REQUIRED)
    private String phone;

    /**
     * 邮箱
     */
    @Schema(description = "邮箱", example = "admin@whut.edu.cn")
    private String email;

    /**
     * 性别
     */
    @Schema(description = "性别", example = "1", allowableValues = {"0", "1", "2"})
    private Integer sex;

    /**
     * 状态
     */
    @Schema(description = "状态", example = "1", allowableValues = {"0", "1"}, requiredMode = Schema.RequiredMode.REQUIRED)
    private Integer userStatus;

    /**
     * 备注
     */
    @Schema(description = "备注", example = "管理员")
    private String remark;

    /**
     * 部门id
     */
    @Schema(description = "部门id", example = "1")
    private Integer deptId;

    /**
     * 租户id
     */
    @Schema(description = "租户id", example = "1", requiredMode = Schema.RequiredMode.REQUIRED)
    private Integer tenantId;

    /**
     * 角色id列表
     */
    @Schema(description = "角色id列表", example = "[1,2]")
    private List<Integer> roleIdList;

}
